package com.itheima.test;

import java.util.Random;

public class Test4 {
    public static void main(String[] args) {
        /*内容：可以是小写字母，也可以是大写字母，还可以是数字
        规则：
        长度为5
        内容中是4位字母，1位数字
        其中数字只有一位，但是可以出现在任意的位置*/

        //1.把大小写字母都存放到一个数组当中
        char[] arr = new char[52];
        //第一次循环存放大写字母
        for (int i = 0; i < 26; i++) {
            arr[i] = (char) (i + 65);
        }
        //第二次循环存放小写字母
        for (int i = 26; i < arr.length; i++) {
            arr[i] = (char) (97 + i - 26);
        }

        //2.随机生成4个索引
        Random r = new Random();
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < 4; i++) {
            int index = r.nextInt(52);
            sb.append(arr[index]);
        }

        //3.添加1-9中的一个数,把字符串变成字符数组
        char[] arr1 = sb.append(r.nextInt(10)).toString().toCharArray();

        //4.随机数打乱顺序
        for (int i = 0; i < arr1.length; i++) {
            //随机生成索引
            int index = r.nextInt(arr1.length);
            //交换数据
            char tmp = arr1[i];
            arr1[i] = arr1[index];
            arr1[index] = tmp;
        }

        //5.把字符数组变回字符串
        String result = new String(arr1);

        //6.输出结果
        System.out.println(result);
    }
}
